package com.hdoit.apollo.logical.cargo.service;

import java.util.List;

import com.hdoit.apollo.logical.cargo.model.Cargo;
import com.hdoit.apollo.logical.cargo.model.Collocation;
import com.hdoit.apollo.logical.cargo.model.StandardPropertyUser;
import com.hdoit.apollo.logical.cargo.model.StandardUser;
import com.hdoit.apollo.logical.stock.model.Stock;
import com.hdoit.apollo.logical.stock.model.StockCollocation;
import com.hdoit.apollo.logical.viewmodel.cargo.CargoSearch;
import com.tennetcn.data.dao.base.ISuperService;
import com.tennetcn.data.message.PagerModel;
/**
 * @author      humaoshu
 * @email       
 * @createtime  2018年03月31日 15:18:44
 * @comment
 */
public interface ICargoService extends ISuperService<Cargo>{

 	public 	boolean applyChange(Cargo cargo, List<StandardUser> standardUsers,List<StandardPropertyUser> standardPropertyUsers,List<Collocation> collocations);

	public Cargo getCargoByCargoNo(String cargoNo, String shopId);

	public boolean checkCargoNo(String CargoId, String cargoNo, String shopId);
	
	public boolean saveCargos(List<Cargo> cargos, List<Stock> stocks,List<StandardUser> standardUsers,List<StandardPropertyUser> standardPropertyUsers, List<Collocation> collocations, List<StockCollocation> stockCollocations);

	public boolean checkCargoNo(String cargoN);

	public Cargo queryModelByCollocationId(String collocationId);

	public List<Cargo> queryListMPForPC(CargoSearch search,PagerModel pagerModel);

	public Cargo queryModelForView(String key);

	public Cargo queryCargoById(String cargoId);

	public boolean deleteCargoById(String cargoId);

	public Cargo getCargoByShapeCode(String shapeCode, String shopId);

	public List<Cargo> queryListMPForWechat(CargoSearch search,PagerModel pagerModel);

}